package model;

import view.VistaHelicoptero;



public class Helicoptero extends Nave{

	
	static final Velocidad VELOCIDAD = new Velocidad(15);
	
	public Helicoptero () {
		super();
		this.velocidad = VELOCIDAD;
		//this.addObserver(new VistaHelicoptero(this));
	}
	
	public void aterrizarEn(Helipuerto unHelipuerto){
		this.frenarNave();
		this.descenderNave();
		this.setPosicion(unHelipuerto.getPosicionEntrada());
	
	}
	
	/*
	public void suspenderseEnElAire(Posicion nuevaPosicion) {
	//Si la nueva posicion es igual a la anterior el helicoptero se mantendra en el aire	
		if (nuevaPosicion == this.trayectoria.getSiguietePosicion(this.getPosicion(), this.getPosicionAnterior()))			
			this.frenarNave();
			
		}
	 */
	
	@Override
	public int getX() {
		return this.getPosicion().getX();
	}

	@Override
	public int getY() {
		return this.getPosicion().getY();
	}

	public void addObserver(VistaHelicoptero obs ) {
		this.listaObservadores.add(obs);
	}
	
	
	public void vivir() {
		if (this.estaVolando()) {
			this.addObserver(new VistaHelicoptero(this));
			this.mover();
		}
	}

	@Override
	public void setChanged() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void clearChanged() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public boolean hasChanged() {
		// TODO Auto-generated method stub
		return false;
	}

	@Override
	public void notifyObservers() {
		// TODO Auto-generated method stub
		
	}

	@Override
	public void notifyObservers(Object obj) {
		// TODO Auto-generated method stub
		
	}
	
}
